home *** CD-ROM | disk | FTP | other *** search
/ Graphics Plus / Graphics Plus.iso / general / hdf / unix / examples.lha / examples / ann / getSDSan.c < prev    next >
Encoding:
C/C++ Source or Header  |  1991-10-24  |  1.3 KB  |  56 lines

  1. #ifdef RCSID
  2. static char RcsId[] = "@(#)$Revision: 1.1 $";
  3. #endif
  4. /*
  5. $Header: /pita/work/HDF/dev/RCS/test/annotations/getSDSan.c,v 1.1 90/04/19 11:14:52 mfolk beta $
  6.  
  7. $Log:    getSDSan.c,v $
  8.  * Revision 1.1  90/04/19  11:14:52  mfolk
  9.  * Initial revision
  10.  * 
  11. */
  12. #include <stdio.h>
  13. #include "df.h"
  14.  
  15. main(argc,argv)
  16. int argc;
  17. char *argv[];
  18. {
  19.     int i, rank, dimsizes[3], desclen, count=1, ret;
  20.     uint16 ref;
  21.     char label[20], *s;
  22.     
  23.     if (argc != 2) {
  24.         printf("Usage: %s infile\n\n\n", argv[0]);
  25.         exit(1);
  26.     }
  27.  
  28.     i = DFSDgetdims(argv[1],&rank,dimsizes,3);
  29.     if (i < 0) 
  30.         printf("\n****Unable to read scientific data set.****\n\n\n");
  31.  
  32.     while (i >= 0) {
  33.         ref = DFSDlastref();
  34.         ret = DFANgetlabel(argv[1], DFTAG_SDG, ref, label, 11);
  35.         printf("\nData set # %d\n",count++);
  36.  
  37.         if (ret < 0) 
  38.             printf("    No label\n");
  39.         else 
  40.             printf("    Label: %s\n", label);
  41.  
  42.         desclen = DFANgetdesclen(argv[1], DFTAG_SDG, ref);
  43.         if (desclen < 0) 
  44.             printf("    No description \n");
  45.         else {
  46.             s = (char *)malloc( desclen+1);
  47.             DFANgetdesc(argv[1], DFTAG_SDG, ref, s, desclen);
  48.         s[desclen] = '\0';
  49.             printf("    Description: %s\n", s);
  50.         }
  51.         i = DFSDgetdims(argv[1],&rank,dimsizes,3);
  52.     }
  53.     printf("\n+++++++++++++++++++++++++\n\n");
  54. }
  55.  
  56.